<?php
// Preparo el id
$id		= (int) $_GET['id'];

// Conecto
$conn	= pg_connect("user=curso_admin password=postgres dbname=midb");

/*
 * Para prevenir problemas de codificación, recuperamos los datos
 * codificándolos momentaneamente a base64
 * 
 */
$q		= "SELECT tipo, size, encode(logo, 'base64') AS logo FROM logos WHERE id='{$id}'";
$r		= pg_query($conn, $q);

// Preparo los datos
$tipo	= pg_fetch_result($r, 0, 'tipo');
$tamaño	= pg_fetch_result($r, 0, 'size');
$logo	= pg_fetch_result($r, 0, 'logo');

// Muestro la imagen
header('Content-type: ' . $tipo);
header('Content-length: ' . $tamaño);

echo base64_decode($logo);
// echo pg_unescape_bytea($logo); // no funciona de la forma deseada.
